package android.appinterfaces;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Environment;
import android.util.Xml;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.StringReader;
import java.util.Calendar;

import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import org.xmlpull.v1.XmlPullParserFactory;
import org.xmlpull.v1.XmlSerializer;

public class HistorialActivity extends Activity {
    /** Called when the activity is first created. */
	
	private TextView Minumero;
	private int i,num;
	private String fechas[];
	private String calorias[];
	FileInputStream fin = null;
	FileOutputStream fout = null;
	
    @Override
    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.historial);
        
        i=0;
        int tipo=0; /*0-->fecha, 1-->calorias*/
        num=0;
        fechas=new String[7];
        calorias=new String[7];
        for(int j=0;j<7;j++) fechas[j]="";
        for(int j=0;j<7;j++) calorias[j]="";
        try{
	        int indice1, indice2;
	    	String salida = "";
	    	String auxiliar1, auxiliar2, auxiliar3;
	    	String t = "";
	    	File ruta_sd = Environment.getExternalStorageDirectory();
			File a = new File(ruta_sd.getAbsolutePath(), "historial.xml");
			try {
				BufferedReader entrada = new BufferedReader(new FileReader(a));
				try {
					while ((t = entrada.readLine())!=null){
						salida = salida + t;
					}
				} catch (IOException e) {
					// TODO Auto-generated catch block
					Toast adv = Toast.makeText(getApplicationContext(), "Error al leer usuarios.xml", Toast.LENGTH_SHORT);
		    		adv.show();
				}
				
			} catch (FileNotFoundException e) {
				// TODO Auto-generated catch block
				Toast adv = Toast.makeText(getApplicationContext(), "No se encuentra usuarios.xml", Toast.LENGTH_SHORT);
	    		adv.show();
			}
			
			int num=0,indice=0;
			try{
				if(salida.indexOf("<fecha1>")!=-1){
					indice1 = salida.indexOf("<fecha1>");
					indice2 = salida.indexOf("</fecha1>");
					fechas[0] = salida.substring(indice1+8, indice2);
				}
				if(salida.indexOf("<fecha2>")!=-1){
					indice1 = salida.indexOf("<fecha2>");
					indice2 = salida.indexOf("</fecha2>");
					fechas[1] = salida.substring(indice1+8, indice2);
				}
				if(salida.indexOf("<fecha3>")!=-1){
					indice1 = salida.indexOf("<fecha3>");
					indice2 = salida.indexOf("</fecha3>");
					fechas[2] = salida.substring(indice1+8, indice2);
				}
				if(salida.indexOf("<fecha4>")!=-1){
					indice1 = salida.indexOf("<fecha4>");
					indice2 = salida.indexOf("</fecha4>");
					fechas[3] = salida.substring(indice1+8, indice2);
				}
				if(salida.indexOf("<fecha5>")!=-1){
					indice1 = salida.indexOf("<fecha5>");
					indice2 = salida.indexOf("</fecha5>");
					fechas[4] = salida.substring(indice1+8, indice2);
				}
				if(salida.indexOf("<fecha6>")!=-1){
					indice1 = salida.indexOf("<fecha6>");
					indice2 = salida.indexOf("</fecha6>");
					fechas[5] = salida.substring(indice1+8, indice2);
				}
				if(salida.indexOf("<fecha7>")!=-1){
					indice1 = salida.indexOf("<fecha7>");
					indice2 = salida.indexOf("</fecha7>");
					fechas[6] = salida.substring(indice1+8, indice2);
				}
				if(salida.indexOf("<calorias1>")!=-1){
					indice1 = salida.indexOf("<calorias1>");
					indice2 = salida.indexOf("</calorias1>");
					calorias[0] = salida.substring(indice1+11, indice2);
					num++;
				}
				if(salida.indexOf("<calorias2>")!=-1){
					indice1 = salida.indexOf("<calorias2>");
					indice2 = salida.indexOf("</calorias2>");
					calorias[1] = salida.substring(indice1+11, indice2);
					num++;
				}
				if(salida.indexOf("<calorias3>")!=-1){
					indice1 = salida.indexOf("<calorias3>");
					indice2 = salida.indexOf("</calorias3>");
					calorias[2] = salida.substring(indice1+11, indice2);
					num++;
				}
				if(salida.indexOf("<calorias4>")!=-1){
					indice1 = salida.indexOf("<calorias4>");
					indice2 = salida.indexOf("</calorias4>");
					calorias[3] = salida.substring(indice1+11, indice2);
					num++;
				}
				if(salida.indexOf("<calorias5>")!=-1){
					indice1 = salida.indexOf("<calorias5>");
					indice2 = salida.indexOf("</calorias5>");
					calorias[4] = salida.substring(indice1+11, indice2);
					num++;
				}
				if(salida.indexOf("<calorias6>")!=-1){
					indice1 = salida.indexOf("<calorias6>");
					indice2 = salida.indexOf("</calorias6>");
					calorias[5] = salida.substring(indice1+11, indice2);
					num++;
				}
				if(salida.indexOf("<calorias7>")!=-1){
					indice1 = salida.indexOf("<calorias7>");
					indice2 = salida.indexOf("</calorias7>");
					calorias[6] = salida.substring(indice1+11, indice2);
					num++;
				}
				indice1=salida.indexOf("<i>");
				indice2=salida.indexOf("</i>");
				indice=Integer.parseInt(salida.substring(indice1+3,indice2));
			}catch(Exception e){
				
			}
	        
			Calendar c = Calendar.getInstance();
	    	int mes = c.get(Calendar.MONTH);
	    	int year=c.get(Calendar.YEAR);
	    	String month= "";
	    	if(mes==0) mes++;
	    	if(mes==1) month="-Enero-"+year;
	    	else if(mes==2) month="-Febrero-"+year;
	    	else if(mes==3) month="-Marzo-"+year;
	    	else if(mes==4) month="-Abril-"+year;
	    	else if(mes==5) month="-Mayo-"+year;
	    	else if(mes==6) month="-Junio-"+year;
	    	else if(mes==7) month="-Julio-"+year;
	    	else if(mes==8) month="-Agosto-"+year;
	    	else if(mes==9) month="-Septiembre-"+year;
	    	else if(mes==10) month="-Octubre-"+year;
	    	else if(mes==11) month="-Noviembre-"+year;
	    	else if(mes==12) month="-Diciembre-"+year;
	    	
	        if (num<8)	i=0;
	        else i=(indice+1)%7;
	        
	        if(num>=1){
		        Minumero = (TextView) findViewById(R.id.textViewH3);
		        Minumero.setText(fechas[i]+month);
		        Minumero = (TextView) findViewById(R.id.textViewH4);
		        Minumero.setText(calorias[i]); 
		        Minumero = (TextView) findViewById(R.id.textViewH5);
		        Minumero.setText(" calorias");
	        }
	        i=(i+1)%7;
	        
	        if(num>=2){
		        Minumero = (TextView) findViewById(R.id.textViewH6);
		        Minumero.setText(fechas[i]+month);
		        Minumero = (TextView) findViewById(R.id.textViewH7);
		        Minumero.setText(calorias[i]);
		        Minumero = (TextView) findViewById(R.id.textViewH8);
			    Minumero.setText(" calorias");
	        }
	        i=(i+1)%7;
	        
	        if(num>=3){
		        Minumero = (TextView) findViewById(R.id.textViewH9);
		        Minumero.setText(fechas[i]+month);
		        Minumero = (TextView) findViewById(R.id.textViewH10);
		        Minumero.setText(calorias[i]);
		        Minumero = (TextView) findViewById(R.id.textViewH11);
		        Minumero.setText(" calorias");
	        }
	        i=(i+1)%7;
	        
	        
	        if(num>=4){
	        	Minumero = (TextView) findViewById(R.id.textViewH12);
		        Minumero.setText(fechas[i]+month);
		        Minumero = (TextView) findViewById(R.id.textViewH13);
		        Minumero.setText(calorias[i]);
		        Minumero = (TextView) findViewById(R.id.textViewH14);
		        Minumero.setText(" calorias");
	        }
	        i=(i+1)%7;
	        
	        
	        if(num>=5){
	        	Minumero = (TextView) findViewById(R.id.textViewH15);
		        Minumero.setText(fechas[i]+month);
		        Minumero = (TextView) findViewById(R.id.textViewH16);
		        Minumero.setText(calorias[i]);
		        Minumero = (TextView) findViewById(R.id.textViewH17);
		        Minumero.setText(" calorias");
	        }
	        i=(i+1)%7;
	        
	        
	        if(num>=6){
	        	Minumero = (TextView) findViewById(R.id.textViewH18);
		        Minumero.setText(fechas[i]+month);
		        Minumero = (TextView) findViewById(R.id.textViewH19);
		        Minumero.setText(calorias[i]);
		        Minumero = (TextView) findViewById(R.id.textViewH20);
		        Minumero.setText(" calorias");
	        }
	        i=(i+1)%7;
	        
	        
	        if(num>=7){
	        	Minumero = (TextView) findViewById(R.id.textViewH21);
		        Minumero.setText(fechas[i]+month);
		        Minumero = (TextView) findViewById(R.id.textViewH22);
		        Minumero.setText(calorias[i]);
		        Minumero = (TextView) findViewById(R.id.textViewH23);
		        Minumero.setText(" calorias");
	        }
	        i=(i+1)%7;
        }catch(Exception e){};        
    }
    
}